home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
EnigmA Amiga Run 1995 November
/
EnigmA AMIGA RUN 02 (1995)(G.R. Edizioni)(IT)[!][issue 1995-11][Skylink CD].iso
/
earcd
/
giochi
/
chinacha.lha
/
ChinaChallenge3
/
C++
/
stubs.c
< prev
next >
Wrap
C/C++ Source or Header
|
1994-05-09
|
680b
|
44 lines
#include <exec/memory.h>
#include <proto/exec.h>
#define ALIAS(a,b) asm(".stabs \"_" #a "\",11,0,0,0\n.stabs \"_" #b "\",1,0,0,0")
#if 1 /* own memory allocation */
void *__builtin_new(ULONG size)
{
ULONG *a;
size = (size+3*sizeof(ULONG)-1)&~(2*sizeof(ULONG)-1);
if (a=(ULONG*)AllocMem(size,MEMF_CLEAR))
*a++=size;
return (void *)a;
}
void __builtin_delete(void *mem)
{
ULONG size;
if (mem)
{
size=(ULONG)*(--((ULONG *)mem)); FreeMem(mem,size);
}
}
#else /* use system functions */
void *__builtin_new(unsigned long size)
{
return malloc(size);
}
void __builtin_delete(void *mem)
{
free(mem);
};
#endif
ALIAS(_main,main);
ALIAS(exit,_exit);